//https://www.yuque.com/huantaipingyang-jucwl/ipzeev/cl6yk5#ZI8v3

//中序遍历实现，重点！！！

#include <algorithm>
#include <climits>
#include <queue>
#include <vector>

using namespace std;

struct TreeNode {
	int val;
	struct TreeNode *left;
	struct TreeNode *right;
	TreeNode(int x) : val(x), left(nullptr), right(nullptr) {}
};